package com.monster.service;

import com.monster.pojo.*;

import java.util.ArrayList;
import java.util.List;

public interface InfoService {
    /**
     * 通过歌手ID
     * 1、查询歌手详细信息（名字、简介、海报、歌曲数量、专辑数量、歌曲集合、专辑集合）
     * 2、关注数
     */
    public Singer selectSingerBySingerId(Long singerId);
    /**
     * 通过歌手ID，关注类型查询歌手的关注度
     */
    public int selectFocusBySingerId(Long singerId);


    /**
     * 通过专辑ID，查询专辑的详细信息（专辑名字、用户名字、流派集合、语种、发行时间、评论、歌曲集合、歌手名字、歌曲时长）
     */
    public Album selectAlbumByAlbumId(Long albumId);
    /**
     * 通过歌手ID  查询歌手的专辑集合
     */
    public List<Album> selectAlbumBySingerId(Long singerId);
    /**
     * 通过类型关键字和ID查找对应评论
     */
    public ArrayList<Comment> selectCommentByTypeId(String key, Long id);


    /**
     * 通过歌单ID   查询歌单的详细信息 （歌单名字、歌单创建用户）
     */
    public Playlist selectPlaylistByPlaylistId(Long playlistId);
    /**
     * 通过歌单ID=type_id  comment_type=2(2代表歌单评论的类型)  查询歌单ID对应评论总条数
     */
    public Long selectCommentCountByPlaylistId(Long playlistId);
    /**
     * 通过歌单ID查找对应歌单评论集合
     */
    public ArrayList<Comment> selectCommentByPlaylistId(Long playlistId);

    Comment getCommentByCommentId(Long commentId);
}
